Near-Optimal Instruction Selection on DAGs

ثبت نشده
چکیده

Instruction selection is a key component of code generation. High quality instruction selection is of particular importance in the embedded space where complex instruction sets are common and code size is a prime concern. Although instruction selection on tree expressions is a well understood and easily solved problem, instruction selection on directed acyclic graphs is NP-complete. In this paper we present NOLTIS, a near-optimal, linear time instruction selection algorithm for DAG expressions. NOLTIS is easy to implement, fast, and effective with demonstrated average code size improvements of 1.48%.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Selection of Optimal Intensity Measure for Seismic Assessment of Steel Buckling Restrained Braced Frames under Near-Fault Ground Motions

Buckling restrained braces (BRBs) have a similar behavior under compression and tension loadings. Therefore, they can be applied as a favorable lateral load resisting system for structures. In the performance-based earthquake engineering (PBEE) framework, an intermediate variable called intensity measure (IM) links the seismic hazard analysis with the structural response analyses. An optimal IM...

متن کامل

Towards a More Principled Compiler: Register Allocation and Instruction Selection Revisited

Backend optimizations are a critical part of an optimizing compiler. This thesis develops a principled approach for understanding, evaluating, and solving backend optimization problems. Our principled approach is to develop a comprehensive and expressive model of the backend optimization problem, and design solution techniques for this model that achieve or approach optimality. We apply our pri...

متن کامل

Minimum Register Instruction Sequence Problem: Revisiting Optimal Code Generation for DAGs

We revisit the optimal code generation or evaluation order determination problem — the problem of generating an instruction sequence from a data dependence graph (DDG). In particular, we are interested in generating an instruction sequence S that is optimal in terms of the number of registers used by the sequence S. We call this MRIS (Minimum Register Instruction Sequence) problem. We developed...

متن کامل

Integrated Instruction Scheduling and Register Allocation Techniques

An algorithm for integrating instruction scheduling and register allocation must support mechanisms for detecting excessive register and functional unit demands and applying reductions for lessening these demands. The excessive demands for functional units can be detected by identifying the instructions that can execute in parallel, and can be reduced by scheduling some of these instructions se...

متن کامل

Assessing the Computational Benefits of AREA-Oriented DAG-Scheduling

Many modern computational platforms, including “aggressive” multicore architectures, proposed exascale architectures, and many modalities of Internet-based computing are “task hungry”—their performance is enhanced by always having as many tasks eligible for allocation to processors as possible. The IC-scheduling paradigm for computations with inter-task dependencies—modeled as DAGs—was develope...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2007